# 有了之前的例子，我们发现顺序变成思路存在很多痛点，将步骤封装成函数

# 有了函数可以稍微比之前方便了点，
def cooking(name=None, vegetables=None):
    name = 1
    print("%s实现了买%s的功能" % (name, vegetables))
    print("%s实现了洗%s的功能" % (name, vegetables))
    print("%s实现了切%s的功能" % (name, vegetables))
    print("%s实现了炒%s的功能" % (name, vegetables))
    print("%s实现了放调料料的功能" % name)
    print("实现了装盘的功能")
    return "finish", "1"

#cooking("张三","茄子")
# 有了函数再看之前的需求
# 需求一：以张三做饭为例子，假设需要５个步骤，买菜，洗菜，切菜，炒菜，放调料
# cooking("张三", "菜")

# 需求二：张三做两次饭
# cooking("张三", "菜")
# cooking("张三", "菜")

# 需求三：张三要做胡萝卜，李四要做西红柿，
# cooking("张三", "菜")
# cooking("李四", "西红柿")

# 需求四：做饭的步骤中多加了一项装盘

# 需求五，做饭这个功能如果要是被其他模块引用 没法实现,得通过模块名－类名－方法名顺序，模块没法直接跳过类应用方法 改正

# 需求六，张三先做土豆，还得要求之后会裤子，怎么实现
def washing_clothes(name, clothes):
    print("%s拿出了脏%s" % (name, clothes))
    print("%s倒洗衣液，开始洗%s" % (name, clothes))
    print("%s实现晾干%s" % (name, clothes))


cooking(name="张三", vegetables="土豆")
n = "lc"
status, code = cooking(name=n, vegetables="a")
print(status)
print(code)
# washing_clothes("张三", "裤子")

# 需求七：张三做黄瓜＋洗裤子，李四做土豆＋洗袜子，王五做白菜＋洗衬衫，怎么实现，
# cooking("张三", "黄瓜")
# washing_clothes("张三", "裤子")
# cooking("李四", "土豆")
# washing_clothes("张三", "衣服")
# cooking("张三", "菜")
# washing_clothes("张三", "衣服")

# 还是很麻烦，需要调用三次cooking和三次washing方法，那么有没有什么简便方法能实现需求？
# 上面都需要输入名字，输入要做菜，要洗的衣服，那么同时都具备以上三个条件的是什么？答案是人，即拥有姓名，还可以干洗衣服，做饭这些事情
# 是否可以把姓名，洗衣服，做饭这些事情都绑定到人身上，然后每次调用人去干这些事情，面向对象初识
